ImageStudio, shareware image processing and conversion package for the Amiga. Copyright (C) 1994 Andy Dean, Graham Dean. Welcome to ImageStudio, shareware image processing and conversion package for the Amiga. This document applies to version 1.2.1, written on 7th December 1994, Copyright (C) 1994 Andy Dean, Graham Dean. Introduction ************ This chapter gives a brief introduction into the features offered by the program. Copyright and Disclaimer ======================== No guarantee of any kind is given that the programs described in this document are 100% reliable. You are using this material at your own risk. The authors *can not* be made responsible for any damage which is caused by using this program. The unregistered package is freeware, but still copyright by Andy Dean and Graham Dean. This means that you can copy it freely as long as you don't ask for a more than nominal copying fee. The registered version of the program *may not* be freely distributed. Permission is granted to include the unregistered package in Public-Domain collections, especially in the excellent Fred Fish Amiga Disk Library (including CD ROM versions of it). The distribution file may be uploaded to Bulletin Board Systems or FTP servers. If you want to distribute this program you must use the original distribution archive ImageStudio.lha. This program (or parts of it) may not be included or used in commercial programs unless by written permission from the authors. Machine requirements ==================== ImageStudio requires the following system to run: * Workbench 2.04 or above. * Around 1 megabyte of free memory. * Several megabytes of free hard disk space. If ImageStudio is run on an AGA machine (A1200 or A4000), it will use the new display modes and palette routines to improve the quality of the internal viewer images. Brief description ================= ImageStudio is written for the casual graphics user who wishes to convert or manipulate various graphics formats on a modest Amiga system. There are several commercial offerings available, however the casual user is paying a lot of money for many facilities and options they would probably never use. Bitmap graphics, by their nature, usually require large amounts of RAM. One of the main objectives of ImageStudio was to reduce this burden by utilising virtual memory - most users have more spare hard disk space than spare RAM. ImageStudio works with several buffers at any one time (dependant on how many levels of undo are specified), each of these buffers can hold either colour-mapped or 24-bit images. For a detailed description of colour-mapped and 24-bit images, See Image types. List of features ================ General: * Full 24-bit image buffers, with optimizations for colour-mapped (palette based) images. * Up to 100 levels of undo / redo. * User configurable virtual memory. * User saveable preferences. * Operations applicable to the whole image or a selected region. * Up to 256 greyshade preview window (with optional dither). * Zoom on preview window. * Internal / external viewers (external for 3rd party 24-bit graphics cards). * Loading / saving / manipulating of AGA image formats (e.g. 256 colours, HAM8) on non-AGA machines. * Max image size of 32000 x 32000 (limited to 250 x 250 in the unregistered version). * Copy / paste to / from the system clipboard. * Runs on all Workbench 2.04+ Amiga's - utilises AGA chipset if available. * On disk AmigaGuide and ASCII text documentation. The registered version also includes TeX `.dvi' and PostScript files. * Multi-level help error requesters. * Standard Workbench2 interface. * Public screen. * Requires no third party libraries or utilities. Import: * IFF-ILBM formats (Standard palette based, HAM6, HAM8, extra halfbright, ILBM24) * BMP * GIF (conforming to GIF87a) * JPEG (conforming to JFIF standard) * PCX * Targa * Any installed Amiga datatype (with Workbench 2.1+) Export: * IFF-ILBM formats (Standard palette based, HAM6, HAM8, extra halfbright, ILBM24) * BMP * EPS * GIF (conforming to GIF87a) * JPEG (conforming to JFIF standard) * PCX * Targa Colour Balance: * All operations are available to the R,G,B components separately. * Brightness ( upto ±100%) * Contrast (non to full) * Gamma ( + and - ) Convolution: * Built in convolutions: Blur, Sharpen, Emboss, Raise, Edge detect. * User definable convolutions, load and save to disk. Effects: * Built in effects: Dynamic range expansion, FlipX, FlipY, RollX, RollY, Negative, Greyscale, Highlight, Shadow, Random, Pixelize, Remove isolated pixels. Scale: * Crop to selected region. * Increase / decrease scale by percentage or absolute image size. * Simple scale or colour averaged. Colour reduction: * Increase colour mapped images to 24-bit. * Decrease number of colours in 24-bit or colour mapped images via Heckbert median cut algorithm. * Dithers available for colour reduction: None, Floyd-Steinberg, Burkes, Stucki, Sierra, Jarvis, Stevenson-Arce. Palette: * Edit palette colours and ranges. * Save current palette. * Force palette onto current image, dithering if necessary (all dithers available). Shareware version ================= To encourage users to register, the freely distributable version of ImageStudio is limited to loading in pictures upto 250x250 pixels. All other operations are available. For details on how to register, See How to register. Starting ImageStudio ==================== ImageStudio can be started from either the Workbench or CLI. From the Workbench it is simply a case of double-clicking on the icon. ImageStudio supports shift-clicking on a file to start the program with (see the Workbench manual for more information). To start ImageStudio from the CLI, simply type: run ImageStudio [filename] where `filename' is an optional file to load in at startup. The full range of tooltypes is supported, and can be appended to the CLI command. For example: run ImageStudio "SCREENNAME=Image2" "PREVIEWDITHER=YES" [filename] would start the program on a public screen named `Image2' with preview dithering on. See Tooltypes, for a full list of available tooltypes. Configuring ImageStudio ======================= In order to benefit from ImageStudio's virtual memory, it is recommended that the default location used for the storage of the temporary files is changed. The default location for the storage of these files is `T:' which is usually in RAM - we want to move this out onto harddisk. To do this, select `Prefs' from the `Project' menu and open up the prefs requester. In the `Temp. files' string gadget, type the new location for the temp files. It is suggested that a drawer be made on a harddisk partition with lots of space to store these files. For example, make a drawer in your `Work:' partition called `tmp', and change the `Temp. files' string gadget to read `Work:tmp'. Tutorial ******** This chapter introduces ImageStudio by way of a few tutorials demonstrating commonly performed operations. Changing the image format ========================= The simplest use of ImageStudio is just as a file format converter; See File formats, for details about the supported file formats. In this example we will change the image format of the `FW14B_250x250.gif' from GIF to IFF-ILBM. 1. Load the file `FW14B_250x250.gif' from the `Pics' drawer. To do this, select `Open' from the `Project' menu. When the file requester opens, select the file and it will load into ImageStudio. The greyscale preview will show the image. 2. The Infobar at the bottom of the screen shows the current image size and number of colours, as well as a fuelgauge showing progress when applicable. The current co-ordinates of the pointer are also shown when the preview window is active. 3. Open the save requester. To do this, select `Save' from the `Project' menu. A requester will open, containing (amongst other things) possible save formats. 4. Select the file format to save. To do this, click on `IFF-ILBM' in the listview. 5. Change the filename to avoid overwriting the original file. To do this, type the new filename - `FW14B_250x250.ilbm' into the `Filename' string gadget. 6. Save out the file by clicking on the `Save' gadget. The file will now be saved out as a 256 colour IFF-ILBM onto the disk. Note: * ImageStudio automatically recognises the filetype of the incoming image. It will use its internal loaders first, then trying datatypes if running on Workbench 2.1+. * All time consuming operations show their progress in the Infobar's fuelgauge and can be aborted by clicking on the `Abort' gadget. Changing the number of colours ============================== Often it is necessary to reduce the number of colours in an image, either to reduce the file size or produce images compatible with non-AGA software. In this example we will reduce the number of colours in the `FW14B_250x250.gif' image from 256 colours to 16 colours. 1. Load in the `FW14B_250x250.gif' from the `Pics' drawer, if it not already loaded. 2. Open the colours requester by selecting `Colours...' from the `Process' menu. 3. The gadgets in the requester will show that the image is a 256 colour colour-mapped image. Change the number of colours to 16 by clicking on the cycle gadget or sliding the `No. of colours' slider. 4. Leave the `Colour choice' and `Dithering' gadgets for now. 5. Click on `OK' to perform the operation. 6. When the operation is complete, view the image with the internal viewer by selecting `View' from the `View' menu. A 16 colour Lores image will be displayed. 7. Remove the internal viewer by clicking the right mouse button. The colour reduced image should contain all the main colours used in the original image (blue, yellow, red and grey), but should contain less shades of the colours. To give the impression of more colours, dithering can be used to mix pixels of the chosen colours. To perform the last operation with dithering: 1. Undo the colour reduction operation to return to the original 256 colour image. To do this, select `Undo' from the `Edit' menu. 2. Bring up the colours requester as before and select 16 colours. Also change the `Dithering' gadget from `None' to `Floyd-Steinberg'. 3. Click on `OK' to perform the operation. 4. View as before. The image will now perform more gradual changes to colour changes. Changing the colour balance =========================== When receiving images from external sources (scanners, frame grabbers) it is ofter necessary to change to "colour balance" of the image. Frame grabbers, for example, may have too much `red' in the image. In this example we shall see the effects on the `ColourFace_200x250RED.ham6' image of altering the colour balance. 1. Load in the `ColourFace_200x250RED.ham6' image from the `Pics' drawer. As the file is in HAM6 format, it is turned into 24-bit internally. 2. View the image with the internal viewer. As the Amiga doesn't have true 24-bit screenmodes, the internal viewer will approximate the 24-bit image with a HAM preview screen (HAM6 on ECS machines, HAM8 on AGA machines). It should be obvious from the viewer that the image is too red. 3. Open the balance floating palette if it is not already open. Do this by selecting `Show balance' from the `Tools' menu. 4. To remove some of the red component, make sure that we are only dealing with the red component. To do this, make sure that only the `Red' checkbox at the bottom of the floating palette is checked. 5. Reduce the brightness slider, by say 20%. The graph on the right of the floating palette will reflect the change (see Show balance for more details on the graph). 6. View the image again, this time the image should have lost much of its unnatural red tint. Brightness and contrast work in very much the same way as a TV set, but gamma may need some explanation. The printing an image out, it is usual for light colours to be resolved well and dark colours to be reduced to a dark mush. It is therefore preferable to have some way boost the brightness of the mid-dark colours whilst still leaving the very light colours light and the very dark colours dark. Gamma is the operator to perform this change. By applying a small amount of positive gamma, a much better balanced image can be produced for printing out. See Show balance, for more information on the balance floating palette. Applying an effect ================== ImageStudio has many built in effects for performing commonly used operations. This example will remove some noise from a region of `HappyFace_240x250.bmp', a simulated scanned image. 1. Load in the `HappyFace_240x250.bmp' image from the `Pics' drawer. 2. The image represents what may happen if you hand scan an image into the computer - lots of "noise". 3. Open the effects floating palette if it is not already open. Do this by selecting `Show effects' from the `Tools' menu. 4. Select `Remove isolated pixels' in the listview of the floating palette. If you clicked on the `Apply' button now, the effect would be applied to the whole image. To compare the image before and after the effect, we'll only apply the effect to the left hand side of the image. 5. Open the `Region co-ords' requester by selecting `Region co-ords...' from the `Edit' menu. To select the left hand side of the image, set the following values in the gadgets: Min x = 0, Min y = 0, Width = 120, Height = 250. Make sure that the radio button on the left of the requester shows that the Width / Height are being used, not the Max values; click on `Ok'. 6. A region of "crawling ants" will show the selected region. 7. Click on `Apply' of the effects floating palette. The `Remove isolated pixels' effect will be applied to the selected region. 8. The left of the image will have had a lot of the noise automatically removed. Clear the selected region by clicking in the preview window. Note: * Not all effects can be applied to regions and whole images. See Show effects, for a comprehensive description of all the effects. See Show effects, for more information on the effects floating palette. Applying a convolution ====================== Convolution is a powerful image processing tool, ImageStudio allows the user to define their own convolution filters. This example will apply a `Texture' filter to the `CheetahFace_250x200.ilbm' image. 1. Load in the `CheetahFace_250x200.ilbm' image from the `Pics' drawer. 2. The `CheetahFace_250x200.ilbm' image is a 32 colour colour-mapped image and convolution only works in 24-bit (see Show convolves for information on how convolves actually work). We therefore need to turn the image into a 24-bit. 3. Open the colours requester and click on the `16 million colours' radio button on the left. Click on `OK'. The image in converted into 24-bit. 4. Open the convolves floating palette if it is not already open. Do this by selecting `Show convolves' from the `Tools' menu. 5. There should be 1 user convolve in the list - `Texture'. Click on it. 6. Apply the convolution filter to the image by clicking on `Apply' at the bottom of the floating palette. 7. After the filter has been applied, you could view the result with the internal viewer in 24-bit, but for a clearer image we'll convert it back to 32 colours. 8. Open the colours requester, select `No. colours' = 32 and `Dither' = `None'. Click on `OK'. 9. Now view the 32 colour image with the internal viewer. The image now has a rough paper(?) texture applied to it. Note: * There are many commonly used convolution filters available, it is up to the user to build a collection suitable filters for their own use. If you find any useful or interesting ones, you could send them to the authors (see The authors) for inclusion into the distribution. See Show convolves, for more information on the convolves floating palette. Scaling the image ================= In this example we will scale the `CheetahFace_250x200.ilbm' image from 250 x 200 pixels down to 80 x 40 (icon size). 1. Load in the `CheetahFace_250x200.ilbm' image from the `Pics' drawer. 2. Open the scale requester by selecting `Scale...' in the `Process' menu. 3. Set the `Width' = 80 and `Height' = 40. Click on `OK'. 4. The image is re-scaled to that of an icon. The finish the creation of the icon, we can load it into Commodore's `IconEdit' program. Both ImageStudio and IconEdit support the clipboard, so we can copy the image into the clipboard from ImageStudio and paste it into IconEdit. 1. Copy the image to the clipboard by selected `Copy' in the `Edit' menu of ImageStudio. 2. Run IconEdit from the `Tools' drawer of your system partition. 3. Select `Paste' from IconEdit's `Edit' menu. The image will be copied into IconEdit for final editing. Menu options ************ This chapter describes ImageStudio's menu options in detail. Selecting a main menu from the list below will give a list of sub-menu options. Project ======= Select the submenu you wish to investigate. Open ---- Keyboard shortcut - `Amiga - O' This is how the user loads in an image into the program. A file requester will appear, through which the user can select a file to open. Upon selecting a file, ImageStudio will test the file against its known file formats - loading the file if the image type is recognised. If the image format is not recognised, an error will be shown. In most cases the image will load directly into ImageStudio; however in the case of HAM6 and HAM8 formats the image is converted into 24-bit data as it is loaded in, as ImageStudio cannot work directly on HAM images. For a detailed description of colour-mapped and 24-bit images, See Image types. Save ---- Keyboard shortcut - `Amiga - S' The save requester allows the user to choose the filename for the saved image as well as the image's format. To change the filename, either click in the string gadget and edit the filename directly or click on the `Choose...' gadget to select the filename with a file requester. To change the image format of the file to be saved, click in the listview on the appropriate format. Depending on the format selected, depends on whether the `Options...' and `Screen...' buttons remain unghosted. Some formats (e.g. IFF-ILBM) have further options available by clicking on the `Options...' button. The `Screen...' button can be clicked on to change the screenmode of the saved image (only used with IFF-ILBM images). When the user has selected the filename and the image format, the file can be saved by clicking on `OK' or no action can be performed by clicking on `Cancel'. If the currently selected filename already exists, the user will be warned that they are about to overwrite it. Screen mode ----------- The user may select the current screen's resolution and number of colours. The screenmode requester allows the user to change the properties of the current screen. Click on the desired screenmode as well as the size, number of colours and overscan settings. To bring the changes into effect, click on `OK' else to perform no action click on `Cancel'. See Known bugs, for information about a known problem with this operation. Prefs ----- This is how the user may configure the program to their own needs with the prefs requester. Temp files This is the drawer where ImageStudio will store its virtual memory temporary files. By default, this is the `T:' drawer which usually lies in the ram disk. Temp files kept in RAM will take up a lot of memory, so it is recommended that they be moved out to somewhere on hard disk. For example: using the Workbench, create a drawer called `tmp' in the system partition of your hard drive. Then change the temp files string in the prefs requester to `sys:tmp'. ImageStudio will now store all its temporary files in this drawer. Convolves This is the drawer where ImageStudio will search for user-defined convolution filters on startup. By default this is the `Convolves' drawer in the same drawer as the program, but the user may change this to an alternative location if they desire. Palettes This is the drawer where ImageStudio will search for extra palette colour files when the palette requester is opened. By default this is the `Palettes' drawer in the same drawer as the program, but the user may change this to an alternative location if they desire. Screen name This is the name of the public screen on which ImageStudio is running. By default this is `IMAGESTUDIO' but could be changed if the user wishes to run 2 copies of the program on different screens. Note: The new public screen name comes into effect either when the program is restarted or if the user changes the screenmode with the `Screen mode' requester (see Screen mode). External viewer This is the CLI command that ImageStudio will execute when the user chooses `External viewer' from the `View' menu (see External viewer). The string is in the form you would start the viewer from a Shell or CLI, with a `%s' placed where the filename should be placed. The default string of run sys:Utilities/VT NIL: %s would run Thomas Krehbiel's ViewTek program to view the image. If you own one of the 3rd party 24-bit graphics cards supported by ViewTek the image would be displayed on that. Note: It is not essential to start the program with `run', but this allows ImageStudio to continue to run even with the viewer active. The `NIL:' are also not essential, but will stop any text output windows opening from the viewer. Page size This is the maximum amount (in kilobytes) of the virtual memory temporary files to be loaded into RAM at any time. The larger you make this value, the less disk accessing is performed but the more data is transferred in a disk access. Use 50k for a minimal set up, 100k for a more reasonable value. Clip unit This is the clipboard number to use. Set to 0 for normal use, any number 1-255 if you wish to use a custom clipboard. No. undo buffers This is the maximum number of undo / redo steps possible. The higher the number, to more disk space (not RAM) is used. Bear in mind that when dealing with large 24-bit images each undo buffer can be several megabytes - a value around 4 will suffice for most users. Note: a change to this value will not come into effect until the next time ImageStudio is run. Save window positions Check this box if you wish the current window layout to be the default at startup. Save screen mode Check this box if you want the current screenmode to be the default at startup. Preview dither When using a screen with few colours, checking this box enables dithering to be used on the preview window to give the impression of more colours. This slows down the preview redraw slightly. Splash window Checking this box causes the about requester to be shown at startup. In order to save these preferences, click on `Save'. The information is written to the program's icon in the form of tooltypes; the user should have no need to alter these tooltypes directly. The current preferences can be used without saving by clicking on `Use' or ignored by clicking on `Cancel'. Info ---- This brings up an information requester containing memory and file usage information. The `Memory' figures are the amount of RAM used by the buffers, the `VMem' figures are the amount of disk space used by the virtual memory. At the bottom of the requester the amount of free RAM is shown. About ----- This brings up a small requester containing information about the program version number and the user name (only in registered version). Quit ---- This quits the program. If any changes remain unsaved, the user is warned before the program quits. Edit ==== Select the submenu you wish to investigate. Undo ---- Keyboard shortcut - `Amiga - U' Undos last operation. The maximum number of undos is set in the preferences requester, See Prefs. Redo ---- Keyboard shortcut - `Amiga - R' Redos last undo. The maximum number of redos is set in the preferences requester, See Prefs. Copy ---- Keyboard shortcut - `Amiga - C' Copies the current image to the clipboard. Once the image has been copied to the clipboard it can be used by any other program that supports the Amiga clipboard. Paste ----- Keyboard shortcut - `Amiga - V' Reads in image from the clipboard. Region co-ords -------------- Keyboard shortcut - `Amiga - D' Allows the user to select a region by typing the co-ordinates. The region co-ords requester allow the user to specify the selected region by either typing in the co-ordinates of the minimum and maximum corners of the rectangle or the minimum co-ordinates and the rectangle's width and height. A radio button on the left of the requester shows whether the maximum co-ords or the width and height are to be used to select the region. If there is already a selected region, these values are copied into the requester when it is opened. Region deselect --------------- Removes any selected region from the preview window. As well as this menu item, the region can be cleared by simply clicking in the preview window. Select all ---------- Keyboard shortcut - `Amiga - A' Makes the selected region the whole of the displayed image in the preview window. Note: If the user has zoomed in on a region of the image (see Zoom in), `Select all' will not select the whole image but just the displayed image in the preview window. View ==== Select the submenu you wish to investigate. Full image ---------- Keyboard shortcut - `Amiga - F' Displays the whole image in the preview window. Zoom in ------- Keyboard shortcut - `Amiga - <' Zooms in to make the currently selected region fill the preview window. Zoom out -------- Keyboard shortcut - `Amiga - >' Zooms out by a factor of 3 times. Internal viewer --------------- Keyboard shortcut - `Amiga - I' Views the current image with the internal viewer. If the image is colour-mapped, the viewer will try and open a screen with the same number of colours as the image. Under the AGA graphics chipset this should always be possible (providing there is enough free CHIP RAM), however under the ECS chipset it is impossible to open up screens of greater than 5 bitplanes. Viewing a 256 colour image, for example, on a ECS machine is not possible directly. If the image originated as an IFF-ILBM, the viewer screen will try and open up in the same screen mode as the image. If this is not possible, the user may change to a more suitable screenmode with the `View screenmode' menu option, See View screenmode. Viewing 24-bit images is done by using the HAM screenmodes (HAM6 under ECS, HAM8 under AGA) to approximate the 24-bit image. In order to keep the viewer reasonably fast, the HAM image sometimes suffers from `colour fringing' as the approximation is relatively crude (especially under ECS). If the internal viewer won't display the current image, check the following: 1. If the image was loaded in as an IFF-ILBM, the saved screenmode may not be supported by your machine. For example, the screenmode may be `Productivity' and your machine doesn't have a multiscan monitor. Simply change the screenmode to one your machine does support - e.g. `Hires Laced' 2. A colour-mapped image contains more colours than it is possible to show on a ECS machine. Either reduce the number of colours in the image to a number that can be displayed or increase the number of colours to 16 million (see Colours) and use the internal viewer to display an approximation in a HAM screen. 3. Make sure you have enough CHIP RAM free to open the screen. Large 256 colour and 16 million colours images take lots of CHIP RAM. To stop the viewer at any time, press the right mouse button or click on `Abort' in the infobar. View screenmode --------------- This allows the user to set the screenmode of the image, and therefore of the internal viewer. Click on the desired screenmode for the image in the screenmode requester. The current screenmode is highlighted in the listview. External viewer --------------- Uses an external viewer program to view the image. This calls up the external viewer program to view the current image. If a 3rd party 24-bit graphics card is installed, a viewer can be used to view the image on that. To specify the external viewer to use, See Prefs. Process ======= Select the submenu you wish to investigate. Crop ---- Crops the current image to the selected region. This reduces the image to only that which is in the selected region. A region must be selected in order for this operation to work. Scale ----- Reduces / increases the size of the image. The scale requester allows the user to change the image's width / height by either selecting the absolute size of the new image or the percentage by which to scale. A radio gadget to the left shows which operation will be performed. The percentage value may also be changed by sliding the width and height sliders to achieve the desired final size; divide and multiply by 2 buttons are provided to quickly scale the image by common amounts. Finally, two methods of scaling are supported: fast and colour average. Fast scaling works with both colour-mapped and 24-bit images and produces results adequate for most needs. If the image is to be scaled up by a large amount the image may become very `blocky' and if the image is scaled down a large amount, information in the image may be lost. To reduce this, colour average scaling is available on 24-bit images which reduces blockiness when increasing the scale and reduces information loss when reducing the scale. Colour average rescale can take significantly longer than a fast rescale. Colours ------- Allows increasing / decreasing of the number of colours in the image, with various dithers. The colours requester allows the user control over the number of colours in the image. A radio button on the left hand side shows whether the current image is colour-mapped or 24-bit. To increase the number of colours in a colour-mapped image, simply select the new number of colours with the top cycle gadget or the `No. colours' slider. Although the number of colours need not be a power of 2 (2, 4, 8, 16, 32, 64, 128 or 256), internally the number will be rounded up to the nearest power of 2. If, for example, a 16 colour picture was increased to 20 colours then the image would become a 32 colour image. Colour-mapped images can also be turned into 24-bit images by clicking on the `16 million colours' radio button on the left hand side of the requester. This is useful if the user wishes to perform an operation on a colour-mapped image that can only be performed on a 24-bit image. The resultant 24-bit image can then be turned back into a colour-mapped image after the operation is complete. To reduce the number of colours in an image, the same process is followed as above with a few differences. Whereas increasing the number of colours in an image does not lose any image information, it is enevitable that reducing the number of colours must lose some of the colour information. In order to help reduce the effect of this, two other aids are used: dithering and palette choice. The result of colour reduction is always a colour-mapped image. The user may select the number of colours in the final image with the top cycle gadget or the `No. colours' slider. Again, although the number of colours need not be a power of 2 (2, 4, 8, 16, 32, 64, 128 or 256), internally the number will be rounded up to the nearest power of 2. This though can be useful, as the user may want to reduce a 24-bit image down to 30 colours - leaving 2 spare for his / her own use. In order to give the impression of more colours in the reduced colour image, dithering can be employed to smoothly distribute colours over areas of high colour change. `Floyd-Steinberg' is the most common method and works well in most cases. For larger images, better contrast can be obtained by using a more computationally intensive dither (`Burkes', `Stucki', `Sierra', `Jarvis') and for the user with large images and lots of time to spare, `Stevenson-Arce'. Again, there is no hard and fast rule which method of dithering is best; if you're not happy with the result, try a different method. Palette ------- Allows the saving of the current palette and loading of new palette onto the current image. Palettes can either be loaded, saved and edited in ImageStudio: Palette load This is used to force a palette onto an image. The requester allows the user to choose the palette to load and any dithering to be applied to the image, See Colours. Various sample palettes are given with the distribution to map the image to the Workbench colours or a general purpose palette. New palettes can be generated with any popular paint package(1). Palette save Saves the current palette out to the filename chosen by the user in the requester. The palette file is compatible with the popular paint packages. This option has no relevance for 24-bit images, as they have no palette. Palette edit This brings up the palette edit requester. Here the user may edit each colour individually or move the colours around with the `Copy' and `Swap' operations. Colour ranges can be created and ranges may be sorted into order of increasing or decreasing luminosity. To edit a colour, simply click on the colour in the scrolling viewer and edit the R,G,B or H,S,V colour values (see Colour representations). To copy or swap two colours, click on the first one in the scrolling viewer then click on either `Copy' or `Swap'. The pointer will change to a "To" pointer to allow you to click on another colour to swap or copy to. To create a colour spread, alter one colour to be the start of the spread and alter another colour to be the end of the spread. Clicking on the first colour, then on `Spread', the on the end colour will cause a smooth transition of colours between the start and end colours. Sorting the colours is like a colour spread, only no colour values are actually changed. Simply click on the start of the sort, followed by either of the `Sort' buttons and finally on the end colour. The colours between these values will be sorted into either an increasing or decreasing order of luminosity. Finally, to apply the new colour palette to the image click on `OK'. To remap the image to the new palette (swap the old colours with their nearest match in the new palette), click on `Remap'. Whilst changing the colours in the scrolling viewer, the colours in the preview window will change. *This is not a representation of what is happening to the image!*. See Common questions, for a full explanation as to this effect. ---------- Footnotes ---------- (1) Except Brilliance, which seems to save all 384 colours of its palette. Convolve presets ---------------- Various commonly used convolution effects. Convolution effects are a very powerful method of processing 24-bit images. See below for more details on how they work. Some popular convolution effects are built in to ImageStudio: Blur low Slightly blurs the image. The convolution matrix is: 0 0 0 0 0 0 0 1 0 0 0 1 2 1 0 0 0 1 0 0 0 0 0 0 0 Div = 6, Bias = 0 Blur high Blurs the image quite a lot. The convolution matrix is: 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 Div = 21, Bias = 0 Sharpen low Slightly sharpens the detail in the image. The convolution matrix is: 0 0 0 0 0 0 0 -1 0 0 0 -1 10 -1 0 0 0 -1 0 0 0 0 0 0 0 Div = 6, Bias = 0 Sharpen high Sharpens the detail in the image quite a lot. The convolution matrix is: 0 0 0 0 0 0 -2 -2 -2 0 0 -2 18 -2 0 0 -2 -2 -2 0 0 0 0 0 0 Div = 2, Bias = 0 Emboss low Gives the image a `lowered' look. The convolution matrix is: 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 -1 0 0 0 0 0 0 Div = 1, Bias = 204 Emboss high Gives the image a greater `lowered' look. The convolution matrix is: 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 -1 0 0 0 -1 -1 Div = 1, Bias = 204 Raise low Gives the image a `raised' look. The convolution matrix is: 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 -1 0 0 0 0 0 0 Div = 1, Bias = 0 Raise high Gives the image a greater `raised' look. The convolution matrix is: 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 1 0 -1 0 0 0 -1 -2 Div = 1, Bias = 0 Edge detect Replaces areas of high colour change to thin edges. The convolution matrix is: 0 0 0 0 0 0 0 -1 0 0 0 -1 4 -1 0 0 0 -1 0 0 0 0 0 0 0 Div = 1, Bias = 0 What follows is a quick description of convolution, it is not necessary to understand this to use the filters. It is convenient think of the convolution filter as an array of numbers that "slides" over the image a pixel at a time. To find the new colour value of the pixel at the centre of the filter, multiply the filter values by the values of the colours under the array then divide the result by the `Div' value, then add the `Bias' value. If we take the example of 3 x 3 `blur low' filter being applied to the pixels below: filter pixels 0 1 0 a b c 1 2 1 convolved with d e f gives: 0 1 0 g h i ((0 x a) + (1 x b) + (0 x c) + (1 x d) + (2 x e) + (1 x f) + (0 x g) + (1 x h) + (0 x i)) / Div + Bias which would be applied to the new pixel in the position of the `e' pixel. Although the pixels shown above are shown as `a', `b' etc... they are actually the 3 red, green and blue values that comprise the colour. Examples: 1. 0 0 0 0 1 0 0 0 0 Div = 3, Bias = 0 would make each pixel one third of its original brightness. 2. 0 0 0 0 0 0 0 1 0 Div = 1, Bias = 0 would move each pixel up by one. 3. 0 0 0 0 1 0 0 0 0 Div = 1, Bias = 50 would add 50 onto each of the red, green, blue components of the centre pixel. Note: * The red, green, blue components of a pixel can have values in the range 0 to 255. If a convolution value is greater than 255 it is made equal to 255. Similarly if a convolution value is less than 0 it is made equal to 0. * ImageStudio has optimized routines for 1x1, 3x3 and 5x5 filters. If the program detects that only values in a 3x3 filter are being used, only calculations for a 3x3 filter are performed. Tools ===== Select the submenu you wish to investigate. Show balance ------------ Opens / closes the balance floating palette. The balance floating palette is used to control the brightness, contrast and gamma of the current image. On 24-bit images, the colour balance can be altered on selected regions as well as the whole image whereas colour-mapped images only allow alterations to the whole image. The colour balance effects are usually applied to all the red / green / blue components simultaneously, but each component can be altered individually by checking the `Red', `Green' or `Blue' checkboxes at the bottom of the floating palette. The effect of changing either the brightness, contrast or gamma can be seen in the graph on the right hand side of the floating palette. The graph shows the input RGB component along the X-axis and the output RGB component along the Y-axis. output Light RGB ^ | | | | | Dark RGB | +-------> input Dark RGB Light RGB No operation is shown therefore with a straight diagonal line - the input value is mapped to the same output value. output ^ | / x|____/ | /| | / | | / | |/ | +-------> input x Brightness Altering the brightness is achieved by mutliplying up / down the RGB components by the specified amount. The range of the slider is from -100% (everything becomes black) to +100% (everything is twice as bright). Contrast Altering the contrast forces dark colours darker and light colours lighter. The range of the slider is from -100% (everything becomes mid grey) to +100% (RGB components are either on/off). Note: 100% contrast on a colour image doesn't produce a black and white image as may be expected. As each RGB component is treated individually, it leaves you with an 8 colour image - the 8 colours being composed of combinations of the RGB components as below: Black 0% Red, 0% Green, 0% Blue Red 100% Red, 0% Green, 0% Blue Green 0% Red, 100% Green, 0% Blue Blue 0% Red, 0% Green, 100% Blue Yellow 100% Red, 100% Green, 0% Blue Magenta 100% Red, 0% Green, 100% Blue Cyan 0% Red, 100% Green, 100% Blue White 100% Red, 100% Green, 100% Blue If you wish to turn a colour image into 2 colour black and white, greyscale the image first with the greyscale effect, See Show effects. Gamma Adjusting the gamma of an image has the effect of lightening some of the mid-dark colours, whilst leaving the dark colours dark. This can often enhance the eye's perception of the image, as the eye is more responsive to light colours. Gamma correction can also be useful when printing an image out, as mid-dark colours tend to get printed too dark. Only small alterations are usually needed with this operator (-20% to +20%). Show effects ------------ Opens / closes the effects floating palette. The effects floating palette contains a list of ImageStudio's built in effects. Not all types of effect can be applied to all types of buffer, the details are given below. Any numerical values required by the individual effects are set using the slider on the effect floating palette. Dynamic range Cannot be applied to regions of a colour-mapped images. Expands the dynamic range of the image to the maximum possible, without altering the colour balance. This is useful for automatically increasing the contrast of poor contrast images, e.g. the output from a scanner. FlipX Can be applied to all types of image. Flips the whole image or selected region horizontally. FlipY Can be applied to all types of image. Flips the whole image or selected region vertically. Greyscale Cannot be applied to regions of a colour-mapped images. Reduces a colour image to a greyscale image. The actual greyscale values (or more correctly, luminosity) value is calculated as 30% of the red component + 59% of the green component + 11% of the blue component. Highlight Cannot be applied to regions of a colour-mapped images. Turns all colours with greater than the given luminance value to white. Negative Cannot be applied to regions of a colour-mapped images. Negates the colour values of the image. RollX Can be applied to all types of image. Rolls the whole image or selected region horizontally, wrapping the image around. RollY Can be applied to all types of image. Rolls the whole image or selected region vertically, wrapping the image around. Pixelize Can be applied to all types of image. Replaces all pixels in the whole image or selected region with larger pixels. The new pixel size is taken from the slider. Random Cannot be applied to colour-mapped images. Adds random noise to the image. The greater the random value, the greater the noise. Remove isolated pixels Can be applied to all types of image. Removes any single pixels that are a different colour to their neighbours. Useful in removing some of the noise in black and white scans. Shadow Cannot be applied to regions of a colour-mapped images. Turns all colours with less than the given luminance value to black. Show convolves -------------- Opens / closes the convolves floating palette. The convolves floating palette allows the user to apply their own convolution effects to a 24-bit image; convolution will not work on colour-mapped images. For an explanation of how convolution works, See Convolve presets. To create a new convolution filter, select `New' and then `Edit' from the floating palette. The convolve grid requester contains the convolution filter's name at the top as well as gadgets for the filter, divisor and bias values. When the user has set the filter values, click on `OK' to return to the convolve floating palette. To apply a filter, select it in the listview and click on `Apply'. To delete a filter from the list, click on `Del'. This will not delete the file from the disk, this has to be done from the Workbench. To scan a new drawer for convolution filters, click on `Load' and select a directory to scan. To save the current list's convolution filters, click on `Save' and select a drawer to save to. The default drawer to scan at startup is set in the preferences, See Prefs. Reference ********* This chapter gives detailed explanations about various aspects of the program. File formats ============ Select the file format you wish to investigate. IFF-ILBM -------- IFF-ILBM is the Amiga's native bitmap graphic file format. IFF-ILBM covers both colour-mapped (palette based) images, true 24-bit and hold-and-modify (HAM8) colour modes. IFF-ILBM files are usually compressed using simple run-length compression, but they can be uncompressed for simplicity and speed. Loads: - Compressed (cmpByteRun) and uncompressed IFF-ILBM files. - Colour-mapped (palette based) images upto 256 colours. - HAM6 and HAM8 images. - Extra half-bright images. - ILBM24 24-bit images. Saves: - Compressed (cmpByteRun) and uncompressed IFF-ILBM files. - Colour-mapped (palette based) images upto 256 colours. - HAM6 and HAM8 images. - Extra half-bright images. - ILBM24 24-bit images. Note: * ImageStudio will load and save AGA images on a non-AGA machine. * The original image's screenmode will be preserved, unless changed by the user (see View screenmode). BMP --- BMP files are commonly found on PCs running Microsoft Windows. BMP images can be both colour-mapped (palette based) or true 24-bit colour. BMP images are usually uncompressed and come in 2 flavours - `Windows' and `OS/2'. Loads: - Windows and OS/2 formatted uncompressed images. - Colour-mapped (palette based) images upto 256 colours. - 24-bit colour images. Saves: - Windows formatted uncompressed images. - Colour-mapped (palette based) images upto 256 colours. - 24-bit colour images. EPS --- EPS files are ASCII text files written in the PostScript language. They can be printed out directly to a PostScript printer or imported into word processing or DTP packages. EPS files are an ineffecient method of storing files, as they are uncompressed and are stored as ASCII text as opposed to binary data. Unless colour is specifically required it is recommended that EPS files be saved in the greyscale format, as they are one third of the size of a colour EPS file. EPS import is not supported. Saves: - Colour mapped or 24bit colour images. - Greyscale or colour. GIF --- GIF is a common format for images upto 256 colours. GIF is a trademark of Compuserve Incorporated. GIF images are normally smaller than their equivalent IFF-ILBM counterparts due to GIF's LZW compression algorithm. GIF files are always compressed. GIF comes in 2 flavours - `GIF87a' and `GIF89a'. GIF87a is the most popular format; ImageStudio should load in both GIF87a and GIF89a although the latter is untested as we couldn't find any genuine GIF89a files. Loads: - GIF87a and GIF89a (see above) format images. - Colour-mapped (palette based) images upto 256 colours. Saves: - GIF87a format images. - Colour-mapped (palette based) images upto 256 colours. JPEG ---- JPEG is a powerful format for storing images as 24-bits. JPEG allows the storage of 24-bit images as very small files due to its lossy compression algorithm. Whereas the compression algorithms used by other file formats loose none of the image information, JPEG trades off a little loss in image quality for a high degree of compression. In order to select the degree of image quality, select the `Options choose' from the `Save' requester (see Save). A quality value of 75 is given by default, resulting in an acceptable degredation of image quality. For higher degree of compression choose a lower value(1). For a higher degree of quality, choose a higher value; values of 85 to 90 result in an almost unnoticable loss of quality. The image can also be saved in a greyscale format, where the colour information is lost but the output file size is correspondingly smaller. Loads: - JPEG / JFIF format images. - Greyscale and 24-bit images. Saves: - JPEG / JFIF format images. - Greyscale and 24-bit images. As JPEG is a relatively new format, an exact format of the JPEG file was only agreed on recently. This format is called `JFIF' and these are the most commonly used JPEG format files - and the format that ImageStudio loads and saves. It is highly unlikely that any old JPEG files are still being circulated, but should you find one it is uncertain whether ImageStudio would accept it. A high degree of compatibility is obtained with our JPEG loader / saver routines, as they are based in part on the work of the Independant JPEG group's routines. ---------- Footnotes ---------- (1) Values less than 25 may cause problems with some JPEG readers PCX --- PCX files are commonly found on PCs running Microsoft Windows. PCX images can be both colour-mapped (palette based) or true 24-bit colour. PCX files are always compressed using a very inefficient run-length encoding algorithm. This algorithm can, in some cases, lead to an increase in file size over an uncompressed image. PCX is included in ImageStudio for compatibility with other platforms, but we do not recommend the general storing of images in this format. Loads: - Colour-mapped (palette based) images with 2 - 16 colours. - Colour-mapped (palette based) with 256 colours. - 24-bit colour images. Saves: - Colour-mapped (palette based) with 256 colours. - 24-bit colour images. Targa ----- Targa is an established colour-mapped and 24-bit colour format used on the PC. Targa is usually used for storing 24-bit images, although it can also handle colour-mapped images as well. The data is usually stored as simple uncompressed data, however it can also be run-length encoded to allow compression. Loads: - Uncompressed / compressed Targa format. - Colour-mapped (2 colour, 256 colour). - 15, 16, 24 and 32-bit true colour images. Saves: - Uncompressed Targa format. - 256 colour-mapped images. - 24-bit colour images. Image types =========== ImageStudio works internally with either "colour-mapped" or "24-bit" images. A description of the workings of both methods follows. Colour-mapped images Colour-mapped (palette based) images are used by the standard (non-HAM) screenmodes on the Amiga. A set of colours (palette) is chosen for the image and every pixel in the image can have one of these colours. Colour-mapped images have the advantage of being a fairly compact way of storing image information and with a large palette (greater than 64 colours) high quality images can be produced. They have the disadvantage that the colours in the image are limited to the colours in the palette - with a small palette it becomes a complex task choosing the correct colours to best portray the image. 24-bit images 24-bit images allow every pixel in the image to be an individual colour - this is essential for high quality images. 24-bit images have the disadvantage that they are typically at least 3-times larger than colour-mapped images and require sophisticated display hardware to show them in their true glory. When should I use each type of image? In general, try to leave the image in the format in which it came. If, for example, you load in a colour-mapped image try and perform all your operations directly to the colour-mapped image; only change to a 24-bit image if absolutely necessary (e.g. to apply a convolution filter). Colour representations ====================== ImageStudio works internally with the R,G,B format of colour representation. This is the most common method of storing colour information on computers, as it represents the amounts of intensities applied to the 3 colour guns of a computer monitor. H,S,V stands for Hue, Saturation and Value. The hue is the basic colour (e.g. red, yellow, green, purple etc...), saturation is the amount of that colour (e.g. weak red, strong red etc...) and the value is the brightness of the colour. Tooltypes ========= ImageStudio supports the configuring of the program via tooltypes from either the Workbench or CLI. It is recommended that the user who starts the program from Workbench uses the "Prefs" requester of ImageStudio to configure it (see Prefs), whereas the CLI user should be aware of the tooltype options. Possible options for a tooltype value are shown with a bar `|' character (read as `or'). Numerical values are shown as `', string values as `'. `CONVOLVE=YES | NO' Whether the convolve floating palette should be open at startup. `CONVOLVETOP=' The top position to open the convolve floating palette. `CONVOLVELEFT=' The left position to open the convolve floating palette. `EFFECT=YES | NO' Whether the effect floating palette should be open at startup. `EFFECTTOP=' The top position to open the effect floating palette. `EFFECTLEFT=' The left position to open the effect floating palette. `BALANCE=YES | NO' Whether the balance floating palette should be open at startup. `BALANCETOP=' The top position to open the balance floating palette. `BALANCELEFT=' The left position to open the balance floating palette. `PREVIEWTOP=' The top position to open the preview window. `PREVIEWLEFT=' The left position to open the preview window. `PREVIEWWIDTH=' The width of the preview window. `PREVIEWHEIGHT=' The height of the preview window. `SCREENMODEID=' The screenmode to open the ImageStudio screen. `SCREENOVERSCAN=TEXT | STANDARD | MAX | VIDEO' The overscan to be used on the ImageStudio screen. `SCREENDEPTH=' The depth in bitplanes of the ImageStudio screen. `SCREENWIDTH=' The width of the ImageStudio screen. `SCREENHEIGHT=' The height of the ImageStudio screen. `TEMPDIR=' The location on hard disk to store the virtual memory temporary files. `CONVOLVEDIR=' The drawer to read for the covolution filters. `PALETTEDIR=' The drawer to read for palettes. `PAGESIZE=' The size, in kilobytes, of the virtul memory pages. `CLIPUNIT=' The system clipboard unit to use. `EXTERNALVIEWER=' The CLI command to execute to run the external 24-bit viewer. `UNDOBUFFERS=' The number of levels of undo / redo available. `PREVIEWDITHER=YES | NO' Whether to perform dithering on the greyscale preview window. `SPLASHWINDOW=YES | NO' Whether to open the `About' window at startup. Known bugs ========== Known bugs: * When changing the screenmode of the ImageStudio program (see Screen mode), the menus are not properly laid out for 2-colour modes. We don't know the reason why, as we re-layout the menus after changing the screenmode. The menus are correctly laid out if the program is started in a 2-colour mode. * At the moment ImageStudio doesn't handle IFF-ILBM files with an interleaved stencil. Make sure when saving from an paint package that the stencil is turned off. * When using the ASL screenmode requester, redraw messages are lost when the requester is moved to "damage" another window. This will be fixed when we sort out how to use the new v38 hook functions. Problems with datatypes ======================= If ImageStudio is running on a Workbench 2.1+ Amiga it will utilise the built in datatypes for image conversion; the user should be made aware of differences between the datatypes and the built-in ImageStudio loaders. The datatypes are only used as a "last resort" if the ImageStudio loaders fail to recognise the incoming image. Datatypes have the following disadvantages: * The do not utilize virtual memory. Therefore when loading a large image, large amounts of RAM are required. * They can be slow. The datatype first has to convert the image to IFF-ILBM, which ImageStudio has to read in and convert to its own internal format. * Datatypes convert the image to a colour-mapped image. 24-bit image formats (e.g. JPEG) therefore are reduced in quality. * Some datatypes we have tried are fundementally bugged - crashing with odd sized images or different file layouts. ImageStudio has no control over the quality of the installed datatypes. Datatypes though can be useful to load in image formats not yet supported by ImageStudio, and are therefore made available to the user. Common questions **************** If you have any questions about ImageStudio, make sure that it hasn't already been answered below: Why doesn't ImageStudio support the TIFF image format? TIFF is a powerful and flexible image format, but that is also its downfall. TIFF supports so many compression algorithms, for example, that it would require a very large amount of code to deal with even a modest range of TIFF files. TIFF could well get added later if the loader / savers become external modules, but there is more important work to be done in the meantime. Will you be adding support for SHAM, HAM-E, etc... At the moment we have no plans to add sliced HAM, HAM-E or other minority IFF formats. Doing so would increase the program size whilst only catering for a very small number of users. As with TIFF, if the loaders / savers become external modules we could add them then. Can I turn virtual memory off? ImageStudio will always work with virtual memory. If you are lucky enough to have lots of RAM and you wish to use that instead of your hard disk, simply put the temp. files in the ram disk (see Prefs). The overhead of using virtual memory from RAM is negligible. Why is there not a colour preview window? Even with a relatively small amount of greyscales, a good approximation of the image can be obtained (balance, contrast, etc...). With a small number of colours, a poor representation of the image is the result. A greyscale preview is also faster. Why have I only got one method of colour choice? Under versions of ImageStudio before 1.1.0, three methods of colour choice were given. This algorithm was limited in its accuracy for chosing colours, we therefore provided the user with the different methods to aid its colour choice. From ImageStudio-1.1.0 the accuracy has been greatly increased, thus removing the need for the user interaction. The cycle gadget is kept incase we decide to implement another method of colour choice instead of the Heckbert median cut algorithm. Why do the preview window colours change when I use the `Palette Edit' requester? In order to display the colours in the image, we have to use some of the screen colours. These colours are usually the greyshades in the preview window, and so it is these colours that will also change. *This is not a representation of what is happening to the image!* Why don't you rewrite parts of the program in assembler for speed? As we have progressed through the versions, we have replaced and rewritten many of slower routines with faster and more efficient algorithms. The reason for the lack of speed in some of the earlier routines was not due to the choice of language (`C'), but the choice of algorithm. Now that we have more efficient algorithms throughout, re-writing portions in assembler would probably only yeald minor speed increases. We feel that time spent squeezing another 10% speed increase is probably better spent developing a new feature. What other programs have the authors written? Andy has written "StickIt" - an Amiga equivalent of the `PostIt' note; useful for reminding you of things to do. Graham has written "MultiSample" and "MooseDrive". Multisample is a utility for converting to and from common Amiga / PC / Atari ST sound sample formats. MooseDrive is a frantic "viewed from the top" car racing game with multiple large scrolling tracks and the ability to upgrade your car as you win races. All the above programs are available from PD libraries as well as the InterNet's `Aminet' servers. The authors *********** ImageStudio was written by Andy Dean and Graham Dean. Queries and orders (see How to register) should be sent to Graham at: Graham Dean, 14 Fielding Avenue, Poynton, Stockport, Cheshire. SK12 1YX ENGLAND Andy can be reached for queries (no orders) via Internet Email at: adean@eleceng.ucl.ac.uk The rate at which ImageStudio progresses depends on a few things: 1. You. If you like and use the program, please register it. If you like the program but think it is missing something that isn't already in our future additions list (see Future additions) *let us know!*. 2. Other work. Graham is studying `A' levels and Andy is doing a PhD and this work will take priority (sad, but true). If you find a bug in ImageStudio that is not convered in the `Known bugs' list (see Known bugs), inform the authors at the above addresses. Be sure to include as much information as possible, the version of ImageStudio being used, a description of the Amiga system you are running (model, amount of RAM, Workbench version, any expansion cards). If you are having problems loading a particular file into ImageStudio, test whether it will load into any another package and if possible whether other files created by the same program also give problems. We cannot really test every faulty file, but if files created by one particular program only give problems on ImageStudio then we'll look into that. How to register *************** To receive the full version of ImageStudio, send 10 pounds sterling (20 US dollars overseas) to: Graham Dean, 14 Fielding Avenue, Poynton, Stockport, Cheshire. SK12 1YX ENGLAND We will accept the following methods of payment: * 10UK pounds cash. * A 10UK pounds cheque, drawn on a UK bank. * A 10UK pounds postal order, purchased in the UK. * 20US dollars cash. * Eurocheque. * International money order. We *don't* accept any foreign cheques drawn on non-UK banks and we *don't* accept any foreign postal orders. Note: Make sure that when sending cash, it is well wrapped in the envelope. In return you will receive the full version of the package, complete with a 68020+ optimized version of the code for faster convolution and dithering. Please allow a resonable time to allow cheque clearance, the processing of the order, etc... Upgrades will be offered to registered users free of charge. If you live overseas, simply send 2 disks to the above address and you will receive the latest version (it's probably best to contact us first to find out what the latest version is). UK users should include appropriate postage (2 first class stamps are adequate) with their 2 disks, to cover return postage. In both cases, your packaging will be re-used to return the disks. The version number of ImageStudio (see About) is to be interpreted as: version.revision.subrevision The `version' shows the main version of the program, `revision' will be increased as small additions and improvements are made to the program. The `subdivision' value is incremented with bug fixes. All the values are simple decimal, not floating point, so version 1.9.0 would be followed by version 1.10.0. New versions of the unregistered package will be distributed with every change in revision number. Credits ******* The authors would like to thank: * Commodore-Amiga. * Carl Revell and David Cusick, for beta testing ImageStudio. * Matt Dillon, for the `Dice' C compiler. * SAS Institute, for the SAS/C C compiler. * Ian OConner, for `The Designer' - used to do all the GUI windows design. * All the public domain / freeware / shareware authors, for loads of great software. * The Independant JPEG Group, for their essential JPEG code and information. * All those involved with the excellent TeX and `TeXinfo' packages. ImageStudio has been tested on: - A500, Workbench 2.04, 1Mbyte CHIP RAM, 2Mbyte FAST RAM, A590 85Mbyte SCSI hard drive, Microbotics VXL*30 accelerator (no 32-bit RAM). - A1200, Workbench 3.0, 2Mbyte CHIP RAM, 4MByte FAST RAM, Power PC1204 expansion card, 68882 FPU, 85Mbyte IDE hard drive. - A4000/EC030, Workbench 3.0, 2Mbyte CHIP RAM, 4MByte FAST RAM, 68882 FPU, 130Mbyte + 420Mbyte IDE hard drives. Future additions **************** The following features will probably be added to future versions of the packages (roughly in order): * ARexx. * Allow the reading of corrupt image files (upto the point where they become corrupt). * Halftoning operators. * Image rotation. * Spare buffer. * Alpha channel buffer. * Making the loader / savers external modules. * Aspect ratio correction in the preview window. * AmigaGuide help from the program.